home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS Toolkit
/
BBS Toolkit.iso
/
pc_board
/
pbank21b.zip
/
AWARD.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1993-06-16
|
2KB
|
148 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 1.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
String STRING002
String STRING003
String STRING004
String TSTRING005(10)
;------------------------------------------------------------------------------
INTEGER004 = 4
GetToken INTEGER001
STRING004 = "award" + GetToken()
If (GetEnv("PBANK")) Then
Tokenize GetEnv("PBANK")
GetToken STRING003
GetToken STRING003
GetToken STRING003
GetToken STRING003
GetToken INTEGER004
Endif
If (Psa(6)) Goto LABEL001
Log "You must have the NOTES PSA installed for Awards.", 0
Goto LABEL005
:LABEL001
GetUser
If (U_Notes(INTEGER004) == "") Then
INTEGER003 = 0
Goto LABEL002
Else
INTEGER002 = 0
Tokenize U_Notes(INTEGER004)
INTEGER003 = TokCount()
If (INTEGER003 > 10) Then
Log "Too many tokens on NOTES line to use Award", 0
Goto LABEL005
Endif
For STRING002 = 1 To INTEGER003
GetToken TSTRING005(STRING002)
If (TSTRING005(STRING002) == "BANK") INTEGER002 = STRING002
Next
If (INTEGER002 > 0) Goto LABEL004
Endif
:LABEL002
If (INTEGER003 > 7) Then
Log "Too many tokens on NOTES line for Award.", 0
Else
If (InStr(U_Notes(INTEGER004), " ")) Goto LABEL003
Log "Not enough room on NOTES line to set up new bank.", 0
Goto LABEL005
:LABEL003
INTEGER002 = INTEGER003 + 1
INTEGER003 = INTEGER003 + 3
TSTRING005(INTEGER002) = "BANK"
TSTRING005(INTEGER002 + 1) = "TIME"
TSTRING005(INTEGER002 + 2) = 0
:LABEL004
TSTRING005(INTEGER002 + 2) = TSTRING005(INTEGER002 + 2) + INTEGER001
U_Notes(INTEGER004) = TSTRING005(1)
For STRING002 = 2 To INTEGER003
U_Notes(INTEGER004) = U_Notes(INTEGER004) + " " + TSTRING005(STRING002)
Next
PutUser
Log "Awarded: " + String(INTEGER001) + "min. Total Bank time: " + String(TSTRING005(INTEGER002 + 2)) + " min.", 0
If (Exist(PPEPath() + STRING004)) DispFile PPEPath() + STRING004, 4 + 1
Endif
:LABEL005
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 17 Goto
; 18 Let
; 11 If
; 1 DispFile
; 1 GetUser
; 1 PutUser
; 5 Log
; 2 Tokenize
; 7 GetToken
;
;
; ■ Functions used :
;
; 20 +
; 2 ==
; 2 <
; 2 <=
; 3 >
; 4 >=
; 8 !
; 4 &&
; 2 ||
; 1 InStr()
; 2 String()
; 2 PPEPath()
; 1 GetToken()
; 2 GetEnv()
; 1 Exist()
; 1 Psa()
; 1 TokCount()
;
;------------------------------------------------------------------------------
;
; Analysis flags : W
;
; W - Write user ■ 5
; Program writes a user record. Although this may be normal for a
; User Editor, it may also be a way to modify an account level.
; ■ Search for : PUTUSER
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 2 For/Next
; 0 While/EndWhile
; 4 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------